{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 使用scipy.io下载 .mat文件\n",
    "得到的是字典格式，键值对"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "dict_keys(['__header__', '__version__', '__globals__', 'emg', 'label'])\n",
      "dict_keys(['__header__', '__version__', '__globals__', 'emg', 'label'])\n",
      "dict_keys(['__header__', '__version__', '__globals__', 'emg', 'label'])\n",
      "dict_keys(['__header__', '__version__', '__globals__', 'emg', 'label'])\n"
     ]
    }
   ],
   "source": [
    "import scipy.io as scio\n",
    "\n",
    "E1 = scio.loadmat('data\\\\S1_E1.mat')\n",
    "E2 = scio.loadmat('data\\\\S1_E2.mat')\n",
    "E3 = scio.loadmat('data\\\\S1_E3.mat')\n",
    "E4 = scio.loadmat('data\\\\S1_E4.mat')\n",
    "\n",
    "print(E1.keys())\n",
    "print(E2.keys())\n",
    "print(E3.keys())\n",
    "print(E4.keys())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 合并E1，E2，E3，E4数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(960095, 6)\n",
      "(960095, 1)\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "\n",
    "E1_emg = E1['emg']\n",
    "E2_emg = E2['emg']\n",
    "E3_emg = E3['emg']\n",
    "E4_emg = E4['emg']\n",
    "\n",
    "E1_label = E1['label']\n",
    "E2_label = E2['label']\n",
    "E3_label = E3['label']\n",
    "E4_label = E4['label']\n",
    "\n",
    "index1 =[]\n",
    "for i in range(len(E1_label)):\n",
    "    if E1_label[i]!=0:\n",
    "        index1.append(i)\n",
    "label1 = E1_label[index1,:]\n",
    "emg1 = E1_emg[index1,:]\n",
    "\n",
    "index2 =[]\n",
    "for i in range(len(E2_label)):\n",
    "    if E2_label[i]!=0:\n",
    "        index2.append(i)\n",
    "label2 = E2_label[index2,:]\n",
    "label2 = label2 + label1[-1,:]\n",
    "emg2 = E2_emg[index2,:]\n",
    "\n",
    "index3 =[]\n",
    "for i in range(len(E3_label)):\n",
    "    if E3_label[i]!=0:\n",
    "        index3.append(i)\n",
    "label3 = E3_label[index3,:]\n",
    "label3 = label3 + label2[-1,:]\n",
    "emg3 = E3_emg[index3,:]\n",
    "\n",
    "index4 =[]\n",
    "for i in range(len(E4_label)):\n",
    "    if E4_label[i]!=0:\n",
    "        index4.append(i)\n",
    "label4 = E4_label[index4,:]\n",
    "label4 = label4 + label3[-1,:]\n",
    "emg4 = E4_emg[index4,:]\n",
    "\n",
    "emg = np.vstack((emg1,emg2,emg3,emg4))\n",
    "label = np.vstack((label1,label2,label3,label4))\n",
    "label = label-1\n",
    "\n",
    "print(emg.shape)\n",
    "print(label.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0]\n",
      " [ 0]\n",
      " [ 0]\n",
      " ...\n",
      " [15]\n",
      " [15]\n",
      " [15]]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "plt.plot(label)\n",
    "print(label)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x286534e5898>]"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(emg)\n",
    "plt.plot(label*0.0001)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 提取时域特征"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "class  0 ,number of sample:  60006 299\n",
      "class  1 ,number of sample:  60006 299\n",
      "class  2 ,number of sample:  60006 299\n",
      "class  3 ,number of sample:  60006 299\n",
      "class  4 ,number of sample:  60006 299\n",
      "class  5 ,number of sample:  60005 299\n",
      "class  6 ,number of sample:  60006 299\n",
      "class  7 ,number of sample:  60006 299\n",
      "class  8 ,number of sample:  60006 299\n",
      "class  9 ,number of sample:  60006 299\n",
      "class  10 ,number of sample:  60006 299\n",
      "class  11 ,number of sample:  60006 299\n",
      "class  12 ,number of sample:  60006 299\n",
      "class  13 ,number of sample:  60006 299\n",
      "class  14 ,number of sample:  60006 299\n",
      "class  15 ,number of sample:  60006 299\n",
      "(4784, 30)\n",
      "4784\n"
     ]
    }
   ],
   "source": [
    "from feature_utils import *  \n",
    "import math\n",
    "\n",
    "featureData=[]\n",
    "featureLabel = []\n",
    "classes = 16\n",
    "timeWindow = 200\n",
    "strideWindow = 200\n",
    "\n",
    "for i in range(classes):\n",
    "    index = [];\n",
    "    for j in range(label.shape[0]):\n",
    "        if(label[j,:]==i):\n",
    "            index.append(j)\n",
    "    iemg = emg[index,:]\n",
    "    length = math.floor((iemg.shape[0]-timeWindow)/strideWindow)\n",
    "    print(\"class \",i, \",number of sample: \",iemg.shape[0],length)\n",
    "    \n",
    "    for j in range(length):\n",
    "        rms = featureRMS(iemg[strideWindow*j:strideWindow*j+timeWindow,:])\n",
    "        mav = featureMAV(iemg[strideWindow*j:strideWindow*j+timeWindow,:])\n",
    "        wl  = featureWL( iemg[strideWindow*j:strideWindow*j+timeWindow,:])\n",
    "        zc  = featureZC( iemg[strideWindow*j:strideWindow*j+timeWindow,:])\n",
    "        ssc = featureSSC(iemg[strideWindow*j:strideWindow*j+timeWindow,:])\n",
    "        \n",
    "        featureStack = np.hstack((rms,mav,wl,zc,ssc))\n",
    "        \n",
    "        featureData.append(featureStack)\n",
    "        featureLabel.append(i)\n",
    "featureData = np.array(featureData)\n",
    "\n",
    "print(featureData.shape)\n",
    "print(len(featureLabel))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 构造成图像数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "class  0  number of sample:  60006 299\n",
      "class  1  number of sample:  60006 299\n",
      "class  2  number of sample:  60006 299\n",
      "class  3  number of sample:  60006 299\n",
      "class  4  number of sample:  60006 299\n",
      "class  5  number of sample:  60005 299\n",
      "class  6  number of sample:  60006 299\n",
      "class  7  number of sample:  60006 299\n",
      "class  8  number of sample:  60006 299\n",
      "class  9  number of sample:  60006 299\n",
      "class  10  number of sample:  60006 299\n",
      "class  11  number of sample:  60006 299\n",
      "class  12  number of sample:  60006 299\n",
      "class  13  number of sample:  60006 299\n",
      "class  14  number of sample:  60006 299\n",
      "class  15  number of sample:  60006 299\n",
      "(4784, 200, 6)\n",
      "4784\n"
     ]
    }
   ],
   "source": [
    "imageData=[]\n",
    "imageLabel=[]\n",
    "imageLength=200\n",
    "\n",
    "for i in range(classes):\n",
    "    index = [];\n",
    "    for j in range(label.shape[0]):\n",
    "        if(label[j,:]==i):\n",
    "            index.append(j)\n",
    "            \n",
    "    iemg = emg[index,:]\n",
    "    length = math.floor((iemg.shape[0]-imageLength)/imageLength)\n",
    "    print(\"class \",i,\" number of sample: \",iemg.shape[0],length)\n",
    "    \n",
    "    for j in range(length):\n",
    "        subImage = iemg[imageLength*j:imageLength*(j+1),:]\n",
    "        imageData.append(subImage)\n",
    "        imageLabel.append(i)\n",
    "        \n",
    "imageData = np.array(imageData)\n",
    "print(imageData.shape)\n",
    "print(len(imageLabel))        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 保存h5文件"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "D:\\Anaconda\\anaconda\\lib\\site-packages\\h5py\\__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n",
      "  from ._conv import register_converters as _register_converters\n"
     ]
    }
   ],
   "source": [
    "import h5py\n",
    "file = h5py.File('DB3//DB3_S1_feature.h5','w')  \n",
    "file.create_dataset('featureData', data = featureData)  \n",
    "file.create_dataset('featureLabel', data = featureLabel)  \n",
    "file.close()  \n",
    "\n",
    "file = h5py.File('DB3//DB3_S1_image.h5','w')  \n",
    "file.create_dataset('imageData', data = imageData)  \n",
    "file.create_dataset('imageLabel', data = imageLabel)  \n",
    "file.close()  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
